科目名 □アルゴリズム論Ⅰ
担当教員   朝廣 雄一     
対象学年   3年   クラス   [257]  
講義室   12108教室   開講学期   前期  
曜日・時限   月1   単位区分   選択  
授業形態     単位数   2  
準備事項    
備考    

講義概要/Class Outline

ソフトウェアとは、プログラミング言語を用いてアルゴリズムを実装したものである。ソフトウェアの性能を評価する指標の一つとして、処理時間が重要である。実際にプログラムを作成して実行してみれば、どの程度の処理時間が必要かは判明する。しかしながらプログラムを作成する前に、アルゴリズムを対象に解析を行うことで漸近的な性能を把握することが出来れば、ソフトウェアの性能に対する予測ができる。本講義ならびに引き続き実施されるアルゴリズム論IIにおいては、実行時間の解析によりアルゴリズムの性能評価を行う方法を理解することを目的とする。本講義では、比較的易しい問題とアルゴリズムを対象とし、アルゴリズム評価のために必要な基礎的な事項を理解することが目標である。  

講義計画 /Class Structure

内容
1 講義概要
講義概要と計画について説明する。
2 問題とアルゴリズム
処理対象を厳密に定式化することの重要性とアルゴリズム、プログラムとの関連を解説する。
3 簡単なアルゴリズム(1)
変数と代入、return 文だけで構築できるアルゴリズムを取りあげ、擬似コードと RAMモデルを導入する。
4 簡単なアルゴリズム(2)
変数と代入、return 文だけで構築できるアルゴリズムを取り上げ、実行時間の解析の初歩を学ぶ。
5 簡単なアルゴリズム(3)
加算と減算を用いたアルゴリズムを取り上げ、実行時間の解析の初歩を学ぶ。
6 簡単なアルゴリズム(4)
乗算、除算などの演算を用いたアルゴリズムを取り上げ、実行時間の解析の初歩を学ぶ。
7 小テスト1
第6回までの内容についてテストを行う。
8 補足と復習
テストの解説ならびに補足と復習を行う。
9 条件分岐のあるアルゴリズムと最悪実行時間
条件分岐のあるアルゴリズムを取り上げ、最悪計算時間の解析の初歩を学ぶ
10 条件分岐のあるアルゴリズムと平均実行時間(1)
条件分岐のあるアルゴリズムを取り上げ、平均実行時間の解析の初歩を学ぶ。
11 条件分岐のあるアルゴリズムと平均実行時間(2)
ひきつづき条件分岐のあるアルゴリズムを取り上げ、平均実行時間の解析の初歩を学ぶ。
12 最悪実行時間と平均実行時間
最悪実行時間と平均実行時間を比較することを通し、それぞれの概念に対する理解を深める。
13 小テスト2
第8回から第12回の内容についてテストを行う。
14 補足と復習
テストの解説ならびに補足と復習を行う。
 

学習・教育目標/Class Target 1. アルゴリズムの実行時間の解析について基礎的事項を理解している
2. 最悪実行時間の概念を理解している
3. 平均実行時間の概念を理解している  
評価基準/GradingCriteria 学習・教育目標の項目についての総合的な満足度を評価し、次のとおりとする。
秀:90%以上、優:80%以上、良:70%以上、可:60%以上、不可:60%未満  
評価方法/GradingMethod 定期試験、小テストを総合して評価する。それぞれの配分については次のとおりとする。
小テスト20%、定期試験80%  
受講上の注意/Class Rules 数学的な解析を、プログラムのようなものに対して行うので、これら両方が得意でない限り、講義内容の理解は困難である。そのことを承知した上で受講すること。  
受講制限/Prerequisit  
関連する科目/Related Class 情報リテラシー、解析学、離散数学、プログラミング基礎、データ構造とアルゴリズム  
教科書/Text
著者名 コルメ ン、ライザーソン、リベスト、シュタイン  
著書名 アルゴリズムイントロダクション改訂2版 第1巻 数学的基礎とデータ構造  
出版社名 近代科学社  
ISBNコード  
指定図書/Assigned Books
著者名 コルメン、ライザーソン、リベスト、シュタイン  
著書名 アルゴリズムイントロダクション改訂2版 第2巻 アルゴリズムの設計と解析手法  
出版社名 近代科学社  
ISBNコード  
著者名 コルメン、ライザーソン、リベスト、シュタイン  
著書名 アルゴリズムイントロダ クション第3巻 精選トピックス  
出版社名 近代科学社  
ISBNコード  
参考文献/Bibliography
著者名  
著書名  
>出版社名  
ISBNコード